Method And Apparatus For Smart Adaptive Dynamic Range Multiuser Detection Radio Receiver

ABSTRACT

A receiver includes multi-user detection (MUD) functionality and a cognitive engine. The receiver may also be coupled to multiple antennas and have analog beamforming capability. The cognitive engine is operative for selecting a beam or beams associated with the multiple antennas to enable successful demodulation by the MUD. The receiver has application in multiple access channels and in other communication scenarios.

CROSS REFERENCE TO RELATED APPLICATIONS

The present application claims the benefit of U.S. Provisional PatentApplication No. 61/784,302 filed on Mar. 14, 2013, which is incorporatedby reference herein in its entirety.

STATEMENT REGARDING FEDERALLY SPONSORED RESEARCH

This invention was made with government support under Contract No.FA8721-05-C-0002 awarded by the U.S. Air Force. The government hascertain rights in the invention.

FIELD

Subject matter described herein relates generally to wirelesscommunication and more particularly to cognitive radio systems andtechniques for achieving ad hoc wireless communications in the presenceof other user interference (sometimes referred to herein as“interference multiple access wireless communications”).

BACKGROUND

As is known in the art, multiuser detection algorithms are increasinglybeing considered for wireless communication systems to allow multipletransmitters to “collide” in the RF medium as viewed by the receiversfor which these transmissions are targeted. In other words, multiuserdetection receivers allow transmitters to be allocated the samefrequency band at the same time and/or to allow collisions to occur in apacket-based multiple access wireless communication protocol.

In many cases, the addition of the multiuser detector in the receiver,along with a medium access control scheme or other protocol rules willenable such a co-channel interference tolerant radio to work. However,the quality of service (QoS) is difficult to maintain in this newparadigm of interference multiple access (IMA) when the distancesbetween transmitters and receivers and/or the channel quality isdynamically changing. The underlying issues associated with thesedifficulties are a mix of both familiar problems (similar to those weunderstand well from typical, main stream, collision avoidancecommunication systems) as well as those that are unique only to IMA.

One unique problem of IMA receivers occurs when the dynamic rangebetween the interfering signals is very large. In theory, MUD receiversshould work extremely well in such a situation because even the simplestsuboptimal MUD algorithm can take advantage of the inefficient highpower signal. Specifically, in many situations, the high powerinterfering signal's rate is very low compared to its capacity potentialrate based upon its very high, received power. In such a case, this highpower signal can, in theory, be detected, recreated, and stripped off toreveal the low power signal underneath.

In an actual system, such as the generic state of the art MUD receivershown in FIG. 1, the received signal, before it is fed to the MUDprocessing algorithm, must be collected by the receiver front end. Inthe receiver front end, comprised of lines and units labeled 340-750 inthe figure, the signal power must be adjusted so as not to saturate thereceiver. This is done by automatic gain control (AGC) unit 600. Afterthe signal's power is reduced by the AGC, it is sampled by ananalog-to-digital converter (A/D) unit 700. The A/D converter unit 700turns the analog signal into a series of numbers or samples output online 750. Each of these samples is represented as a block of bits (onesand zeros), where the number of bits in each block used to represent thevalue of a single sample has been pre-determined and is limited,typically to 8 bits per sample (bps), 12 bps, or 16 bps.

In addition to the AGC and A/D operations, the processing that is donewithin the parameter estimation unit 800 and the MUD processing unit 900is done with a limited precision on the number of bits per value. Thisis known in the art of hardware implementations of processing algorithmsas fixed precision arithmetic. It is the combination of the AGC, A/D,and fixed precision arithmetic that causes a significant noise-likeeffect to be applied to the lower power signal.

FIG. 2 is a diagram illustrating a network scenario in which two nodes(node a and node b) endeavor to communicate with one another using achannel that is already in use by two other nodes (node A and node B).Nodes A and B may be communicating with one another at a relatively highpower level and nodes a and b may desire to communicate at a much lowerpower level. As shown, at a particular point in time, node b may receivetwo signals, a higher power signal received from node A and a lowerpower signal received from node a. These signals are effectively addedtogether at the receive antenna of node b. The signal from node Arepresents an interference signal at node b (i.e., an unwanted signal)and the signal from node a is the desired signal. This is one example ofa situation where a nearby transmitter might overpower other localcommunications. Another example might occur in a system where powercontrol is not possible, and where distances could be small or greatbetween transmitting and receiving nodes, and could change over timedepending upon parameters such as changing location of transmittersand/or receivers, as well as changes in the destination node(s) for eachpacket transmission.

If the two signals received at node b are many orders of magnitudedifferent in received power (e.g., greater than 30 dB apart), then thecombined effect of the AGC and the A/D can result in the lower of thetwo signals being “buried” in the combination of receiver noise and anoise-like result that happens when coarse quantization is appliedduring the sampling process.

Specifically, the received signal at node b may be modeled as comingfrom four different sources: r=s+n1+n2+n3, where s is the signal ofinterest and n1 is energy from other signals in the environment. Both sand n1 are present at the antenna. The other two noise terms are n2, thereceiver analog noise, and n3, the receiver A/D digitization noise. Theenvironment noise, n1, is pushed down by the AGC along with the receivedsignal, s. The other two terms, n2 and n3, are not pushed down by theAGC. Since the AGC is upfront in the receiver chain, n2 includes impactsfrom the tuner and filters of the receiver. If the receiver has severalstages of downconversion (e.g., one or more IF downconversion stages),there will be multiple iterations of tuners/filters, all of whichcontribute to n2. This means that even if the lower power signal (signala) were received at the antenna with enough power to be successfullydemodulated in the absence of the higher power signal (signal A), onceit is combined with the higher power signal, the AGC will push down thetotal received signal power to a point where the power level of thelower power signal is dramatically lower than its received level. Evenif the higher power signal could be stripped off perfectly from thispost AGC signal, the rate of the information attempting to be conveyedby the lower power signal will likely be too high compared to thecapacity rate dictated by the actual (post-AGC) received signal to noiseratio (SNR) of this signal.

It is possible that the effect of the AGC is not so severe as to causethe received SNR of the lower signal to be too low relative to its rate.In this case, the noise term that will have the most effect is n3, thenoise that models the effect of signal quantization. Specifically, afterthe lower power signal has been reduced in received power by the AGCprocess, there may simply not be enough bits per sample to represent thesmall variations that are due only to the lower power of the twointerfering signals. Furthermore, the processing that is performed aspart of the MUD algorithm must be implemented with limited precisionarithmetic. The limited precision adds yet another effect that would notcause a problem if the signals were closer in received power, but thatwill cause a very noticeable and detrimental effect on the lower powersignal when their dynamic range (the difference between the two signal'sreceived powers) is many orders of magnitude.

There are two conventional alternatives to using a MUD receiver to solvethe interference problem. The first is to use error correction coding,treating the interference as noise. Even without the effect of theAGC-plus-A/D described above, for cases of high power interference,treating the interference as unstructured noise will result in a verylow SNR for the signal of interest, which leads to a extremely low ratelink. When we add the effect of the AGC-plus-A/D which pushes the lowerpower signal of interest even lower, down into the noise, link closure,even at very low rates, is no longer possible.

The second alternative in this case is to use the spatial diversity thattypically exists among interfering signals. It is very common incommercial wireless systems for the interfering transmitters to belocated at different angles of arrival as seen by the receiver. If thereceiver is equipped with multiple antennas, as shown in FIG. 3, thereceiver could employ any number of digital beamforming algorithms todirect a strong beam toward one of the transmitters and to direct verydeep nulls toward the other transmitters.

This digital beamform-only solution requires high-cost technology, andsometimes high computational complexity for needed processingalgorithms, hardware devoted to the beamforming processing, as well asmultiple antennas and the corresponding receiver ports. In addition, toattempt to provide sufficient quality of service under many typicalconditions, the number of antenna elements needs to be greater than thetotal number of anticipated interfering transmitters. This isunrealistic for most size/weight/power requirements of most wirelesscommunication receivers. Even with all these necessary components, thereare still many cases in which the signals are not spatially separable tothe level required for reliable communication. Moreover, the limiteddynamic range issue is still present in conventional state of the artdigital beamforming approaches, such as illustrated in FIG. 3.

A much lighter and cheaper, but less effective, solution could be builtwith as few as two receive antennas and by using analog beamforminginstead of digital beamforming. Such a receiver would provide somecapability in adjusting the received powers of interfering signals, butalone, would almost always suffer unreliable links due to theunsuppressed co-channel interference.

SUMMARY

The concepts, systems, circuits, and techniques described herein canmake use of cheaper, lighter, less capable analog beamforming technologyto address problems caused by an AGC, A/D, and/or fixed precisionarithmetic that can leave a MUD severely crippled or even inoperable ina high dynamic range scenario.

In order to accomplish reliable reception of interfering signals inchanging environments that are typical of those experienced bycommercial wireless systems, the concepts, systems, circuits, andtechniques described herein may rely upon an ability of the receiver tosense and characterize the situation that it faces as well as to providea cognitive ability to intelligently and automatically (e.g., withoutinput from a human) control the receiver parameters to result in areceive beam being chosen that increases the likelihood of success ofthe MUD processing for any given situation as it occurs.

The concepts, systems, circuits, and techniques described herein finduse in a wide variety of application areas including, but not limitedto, wireless communication such as that provided by the 4G (LTE)cellular, IEEE 802.11 (Wi-Fi), or IEEE 802.16 (WiMAX) wireless standardsand equipment.

The concepts, systems, circuits, and techniques described herein allowdifferent wireless networks and/or radios to co-exist in the samefrequency band at the same time, causing interference with one another(i.e., they can interfere on purpose) and the concepts, systems,circuits, and techniques described herein can help alleviate thespectrum congestion problem that plagues commercial wireless systems.

It should thus be appreciated that, in general, the concepts, systems,circuits, and techniques described herein may find use in anyapplication in which it is necessary or desirable to allow differentsignals to propagate in a manner such that the signals interfere withone another. The concepts, systems, circuits, and techniques describedherein can be used to receive such interfering signals and process theinterfering signals to provide a useful result (e.g., the ability toincrease an amount of information transmitted or otherwise exchangedbetween two points (a source and a destination) over a band limitedchannel or transmission media).

In one exemplary application, the concepts, systems, and techniquesdescribed herein allow different wireless networks and/or radios toco-exist in the same frequency band at the same time, causinginterference with one another (i.e., the networks/radios, etc., willinterfere on purpose) without different providers and mobile nodeshaving to conform to a single waveform or coordination-enablingprotocol. The different interfering networks/systems do not requirepre-specified coordination/cooperation protocols or means of directcommunication with each other to negotiate a satisfactory sharing of thesame band.

The concepts, systems, circuits, and techniques described herein mayenable backward compatible operation with radios that do not possess thecapabilities of the novel concepts, systems and techniques, whereconventional radios would maintain high functionality in the presence ofthe impeded “spectrum share.”

In some embodiments, a communication receiver includes a multiuserdetector (MUD), two or more receive antennas, a coarse analogbeamforming capability, and a cognitive engine internal to the radiothat is capable of making beamforming and internal radio receivercontrol decisions on-the-fly, in reaction to at-that-moment interferencelevel, location, channel conditions, and achieved quality of service.The concepts, systems, circuits, and techniques described herein enablereliable reception of interfering signals that otherwise would not besuccessfully received and decoded by either of the individual methods ofMUD or analog beamforming or by pre-determined combinations of MUD andanalog beamforming.

In accordance with one aspect of the concepts, systems, circuits, andtechniques described herein, a communication device is provided for usein a multi-signal wireless environment having a signal of interest andone or more other signals in a common frequency band. More specifically,the communication device comprises: multiple antenna ports forconnection to multiple antennas; at least one analog beamformer to formdifferent receive beams for the multiple antennas, each receive beam toreceive a different combination of the signal of interest and the one ormore other signals; a multi-user detector (MUD) that is capable ofdemodulating a signal of interest within a composite signal; and acognitive engine to intelligently select one or more receive beams thatwill result in a dynamic range between the signal of interest and theone or more other signals that are delivered to the MUD that isfavorable for successful detection of the signal of interest in the MUD.

In one embodiment, the communication device further comprises aparameter estimator to estimate one or more signal quality metrics foreach signal within each of a plurality of receive beams generated by theat least one analog beamformer, wherein the cognitive engine isconfigured to select the one or more receive beams based, at least inpart, on the signal quality metrics estimated by the parameterestimator.

In one embodiment, the one or more signal quality metrics estimated bythe parameter estimator includes a signal to noise ratio (SNR).

In one embodiment, the parameter estimator is configured to estimate oneor more low quality signal parameters associated with signals receivedwithin receive beams generated by at least one analog beamformer; andthe cognitive engine is configured to select one or more receive beamsbased, at least in part, on the low quality signal parameters.

In one embodiment, the cognitive engine includes a beam grading unit toprovide grades for beams or beam combinations that are indicative of thebeams or beam combinations respective advantage provided to thedemodulator for the specific signals of interest; and the parameterestimator includes an optimization unit coupled to receive the beamgrades from the beam grading unit and to use the grades to optimize thebeams for which low quality signal parameters are generated in arecursive fashion.

In one embodiment, the one or more low quality signal parametersestimated by the parameter estimator include at least one of: a numberof coexisting signals, a baud rate for each signal, baud timing for eachsignal, carrier offset for each signal, error correction coding rate foreach signal, and modulation scheme for each signal.

In one embodiment, the at least one analog beamformer includes multiplecombiners that are each configured to linearly combine signals receivedat the multiple antennas in a different manner, wherein an output ofeach of the multiple combiners is coupled to an input of the parameterestimator.

In one embodiment, the communication device further comprises a beamselector switch coupled to outputs of the multiple combiners to select,under control of the cognitive engine, one or more of the beamsgenerated by the multiple combiners for further receiver processing.

In one embodiment, the at least one analog beamformer includes a linearcombiner having configurable combining weights, the linear combinerhaving an output that is coupled to an input of the parameter estimator,wherein the linear combiner is capable of achieving a variety ofdifferent receive beams if the combining weights are varied.

In one embodiment, the communication device further comprises a weightgeneration unit to generate weights for the linear combiner undercontrol of the cognitive engine to achieve different receive beams.

In one embodiment, the communication device further comprises a receivechain having an automatic gain controller followed by an analog todigital converter, wherein the parameter estimator includes a gradientcalculator to determine gradients between linear combiner weights and adynamic range of a signal at the output of the automatic gaincontroller, the parameter estimator to deliver the gradients to thecognitive engine for use in updating the weights of the linear combiner.

In one embodiment, the parameter estimator includes a direction ofarrival estimator to estimate angles of arrival of signals within theplurality of receive beams.

In one embodiment, the parameter estimator includes a beam dynamic rangeestimator to estimate dynamic ranges between the signal of interest andother signals in different receive beams using the direction of arrivalinformation generated by the direction of arrival estimator and knownbeam patterns associated with the different receive beams; and thecognitive engine is configured to select the one or more receive beamsbased, at least in part, on the estimated dynamic ranges.

In one embodiment, the cognitive engine is configured to deliverinformation identifying a selected beam or beams to the MUD.

In one embodiment, the cognitive engine includes an operating pointdetermination unit to identify an operating point of the communicationdevice based, at least in part, on powers and rates associated withsignals received at the multiple antennas, and a beam grading unit todetermine if each of the available receive beams or beam combinations isfeasible for use at the operating point and, if so, to determine a gradefor the beam or beam combination.

In one embodiment, the cognitive engine further includes an ordered beamlist generation unit to generate a list of beams or beam combinations inorder of preference based, at least in part, on the grades determined bythe beam grading unit, the ordered beam list generation unit beingconfigured to: (a) generate a list of beams in grade order if asingle-beam MUD is being used, (b) generate a list of beam combinationsif a multi-beam MUD is being used, and (c) generate a list of beams orbeam combinations in an order that the beams or beam combinations shouldbe used by the MUD if a beam-recursive MUD is being used.

In one embodiment, the cognitive engine is configured to select the oneor more receive beams based, at least in part, on one or more highquality signal parameter estimates generated as a byproduct of the MUD.

In one embodiment, the cognitive engine is configured to select the oneor more receive beams based, at least in part, on quality of service(QoS) information.

In one embodiment, the communication device includes multiple MUDs usingdifferent MUD processes; and the cognitive engine is configured toselect the one or more receive beams based, at least in part, on thedifferent MUDs that are available in the communication device.

In one embodiment, the communication device comprises a single type ofMUD and the cognitive engine is configured to select one beam, one beamcombination, or a list of beams based, at least in part, on the type ofMUD that is available in the communication device.

In one embodiment, the communication device includes a handheld wirelesscommunicator.

In one embodiment, the communication device includes a base station orwireless access point.

In one embodiment, the communication device includes an integratedcircuit.

In one embodiment, the communication device includes a femto-cell unitfor use in a cellular communication system.

In one embodiment, the communication device includes a gateway unit foruse in WiFi hotspots.

In one embodiment, the at least one analog beamformer is only capable ofcoarse beamforming.

In accordance with another aspect of the concepts, systems, circuits,and techniques described herein, a method is provided for use indetecting and demodulating a signal of interest in a multi-signalwireless environment. More specifically, the method comprises: receivingsignals using multiple receive beams associated with a plurality ofantennas, wherein each receive beam outputs a composite signal having adifferent combination of the signal of interest and one or more othersignals; and selecting one or more of the multiple receive beams to becoupled to a multi-user detector (MUD) to demodulate the signal ofinterest, wherein selecting one or more of the multiple receive beamsincludes selecting one or more receive beams that will produce anestimated dynamic range between the signal of interest and the one ormore other signals that is favorable for demodulation of the signal ofinterest in the MUD.

In one embodiment, selecting one or more of the multiple receive beamsincludes selecting one or more receive beams that produce an estimateddynamic range between the signal of interest and the one or more othersignals that is best for detection of the signal of interest in the MUDfrom amongst the multiple receive beams.

In one embodiment, receiving signals using multiple receive beamsincludes receiving signals using multiple different combiners that areeach coupled to the plurality of antennas, wherein each combinergenerates a different receive beam.

In one embodiment, receiving signals using multiple receive beamsincludes receiving signals using a linear combiner having variablecombining weights that is coupled to the plurality of antennas, whereinthe combining weights are varied to achieve the multiple receive beams.

In one embodiment, the method further comprises estimating gradientsbetween combining weights of the linear combiner and a dynamic range ofa signal at the output of an automatic gain controller; and using thegradients to update the combining weights of the linear combiner.

In one embodiment, the method further comprises estimating parametersassociated with signals output by each of the multiple receive beams;wherein selecting one or more of the multiple receive beams includesselecting the one or more receive beams based, at least in part, on theestimated parameters.

In one embodiment, estimating parameters associated with signals outputby each of the multiple receive beams includes estimating a signalquality metric for each signal output by each receive beam, whereinselecting one or more of the multiple receive beams includes selectingthe one or more receive beams based, at least in part, on the estimatedsignal quality metrics.

In one embodiment, selecting one or more of the multiple receive beamsincludes selecting the one or more receive beams based, at least inpart, upon the signal quality metric of signal to noise ratio (SNR).

In one embodiment, estimating parameters includes estimating one or morelow quality signal parameters associated with signals output by eachreceive beam, wherein selecting one or more of the multiple receivebeams includes selecting the one or more receive beams based, at leastin part, on the estimated low quality signal parameters.

In one embodiment, the one or more signal parameters include at leastone of: number of coexisting signals, baud rates of signals, baud timingof signals, carrier offsets of signals, error correction coding rates ofsignals, and modulation schemes of signals.

In one embodiment, estimating parameters includes estimating angles ofarrival associated with the one or more other signals output by themultiple receive beams.

In one embodiment, estimating parameters includes estimating a dynamicrange between the signal of interest and the other signals in thecomposite signal associated with each of the multiple receive beamsusing the estimated angles of arrival, wherein selecting one or more ofthe multiple receive beams includes selecting the one or more receivebeams based, at least in part, on the estimated dynamic ranges.

In one embodiment, selecting one or more of the multiple receive beamsto be coupled to a multi-user detector (MUD) to detect the signal ofinterest includes: (a) determining an operating point based, at least inpart, on powers and rates associated with signals received at theplurality of antennas; (b) grading beams to determine if each of theavailable receive beams or beam combinations is feasible for use at theoperating point; (c) if an available receive beam or beam combination isfeasible for use at the operating point, determining a grade for thebeam or beam combination; and (d) generating an ordered list of beams orbeam combinations in order of preference based, at least in part, on thegrades determined by the beam grading unit.

In one embodiment, selecting one or more of the multiple receive beamsincludes selecting the one or more receive beams based, at least inpart, on one or more high quality signal parameters generated by a highquality parameter estimation unit.

In one embodiment, selecting one or more of the multiple receive beamsincludes selecting the one or more receive beams based, at least inpart, on quality of service (QoS) information.

In one embodiment, multiple different MUDs are available for use indetecting the signal of interest; and selecting one or more of themultiple receive beams includes selecting the one or more receive beamsbased, at least in part, on the different MUDs that are available.

In one embodiment, selecting one or more of the multiple receive beamsincludes selecting the one or more receive beams based, at least inpart, on the modulation and/or information rate of the interferingsignal.

In one embodiment, the method further comprises delivering informationidentifying the one or more selected receive beams to the MUD.

BRIEF DESCRIPTION OF THE DRAWINGS

The foregoing features may be more fully understood from the followingdescription of the drawings in which:

FIG. 1 is a block diagram illustrating a conventional MUD receiverarrangement;

FIG. 2 is a diagram of a network scenario in which a pair of nodes thatendeavor to use the same channel as is already in use communicate. Thispair is called the second-user-on-channel (SUOC);

FIG. 3 is a block diagram illustrating a receiver arrangement that usesmultiple antennas and digital beamforming to direct a strong beam towardone of two transmitters and a strong null toward the other;

FIG. 4 is a block diagram illustrating an exemplary receiver inaccordance with an embodiment;

FIG. 5 is a block diagram illustrating functionality within an exemplarycognitive engine in accordance with an embodiment;

FIG. 6 is a block diagram illustrating another exemplary receiver inaccordance with an embodiment;

FIG. 7 is a diagram illustrating properties associated with two adjacentdipole antennas separated by a distance d that receive energy from asource at angle θ;

FIG. 8 is a diagram illustrating some antenna responses that areachievable using different weighting schemes to linearly combine theantennas in FIG. 7; and

FIG. 9 is a block diagram illustrating functionality within an up frontparameter estimator unit in accordance with an embodiment.

DETAILED DESCRIPTION

Before describing a coexistence cognitive radio (CECR) and relatedmethods, some introductory concepts and terminology are explained. As aninitial matter, it should be appreciated that the concepts, systems, andtechniques described herein find use in a wide variety of applicationareas.

For example, the concepts, systems, and techniques described herein forprocessing and/or making use of interfering signals find application ina wide variety of application areas including, but not limited to:magnetic storage media, magnetic storage systems, signal propagationsystems (e.g., systems including cable or other physical transmissionmedia), wireless networks or systems (e.g., wireless medical systems,satellite communications (SATCOM) systems, optical communicationssystems, wireless networking systems, wireless cellular systems, and/orothers), and wired communications systems (e.g., communications over acable or other type of wire or conductor).

The above notwithstanding, to promote clarity and understanding, thebroad concepts, systems, and techniques of the present disclosure arediscussed below in the context of a wireless communication system. Thisis not intended to be limiting and should not be construed as such. Thatis, as described above, the broad concepts described herein apply to awide variety of different fields of use.

Communicating data from one location to another requires some form ofpathway or medium between the two locations. In telecommunications andcomputer networking, a communication channel, or more simply “achannel,” refers to a connection between two locations over atransmission medium. The connection may, for example, be a logicalconnection and the transmission medium may be, for example, amultiplexed medium such as a radio channel. A channel is used to conveyan information signal (e.g., a digital bit stream, etc.) from one ormore source or sending nodes (or, more simply, “sources” or“transmitters”) to one or more destination or receiving nodes (or, moresimply, “destinations” or “receivers”). Regardless of the particularmanner or technique used to establish a channel, each channel has acertain capacity for transmitting information, often measured by itsfrequency or bandwidth in Hertz or its data rate in bits per second.

A coexistence cognitive radio (CECR) and related techniques as describedherein are capable of assessing a frequency spectrum, determiningcandidate bands in which other independent radios are already operating,and successfully sharing access of an already occupied frequency bandwith an independent radio system. CECRs may successfully transmit andreceive in a pre-occupied band without prohibiting the operation of apre-existing radio system that was already operating in that band.Moreover, the pre-existing radio system already operating in that bandrequires no additional capabilities to co-exist with the subject CECRsystem. Specifically, the pre-existing radio system is not expected tocommunicate with the coexistence cognitive radio to accomplish thevirtual negotiation to settle upon an agreeable coexistence of the twosystems.

FIG. 4 is a block diagram illustrating an exemplary receiver inaccordance with an embodiment. The receiver of FIG. 4 may be part of,for example, a coexistence cognitive radio (CECR) or other radio system.As shown, multiple antennas 100, 110 supply signals 120, 130 to a set offixed linear combiners 201, 210 which may serve as beamformers. Combineroutputs 230, 240 are passed to an up front signal parameter estimationunit 245. Estimation unit 245 computes a list of SNR's for each signalin each beam and passes this information to a cognitive engine 300 alongline 250. Estimation unit 245 may also compute low quality signalparameter estimates, such as the number of coexisting signals, baudrates and baud timing, carrier offsets, modulation schemes, etc. Theselow quality parameter estimates are passed to the cognitive engine 300along line 260. The cognitive engine 300 may also receive quality ofservice (QoS) information and relevant waveform parameters on input line970, information on one or more MUD algorithm types implemented in thereceiver on input line 980, and high quality parameter estimates forcurrent beams (if available) on input line 850. The cognitive engine 300evaluates all options given the available information and provides adecision as to which beam or beams to use (e.g., a single combineroutput if the MUD is a single-beam MUD, a set of beams if the MUD is amulti-beam iterative MUD, etc.). A combiner list may be output to thebeam selector unit 365 along line 360. The chosen combiner output(s) arepassed along line 370 for conventional down conversion and basebandsampling in mixer 400, low pass filter (LPF) 500, automatic gaincontroller (AGO) 600, and analog to digital (A/D) converter 700. Theparticular combiner (or combiners) chosen may be one (or a set) thatexhibits favorable dynamic range(s) for the signals of interest, so thatthe MUD algorithm performs favorably.

The cognitive engine 300 receives input as available from other unitswithin the receiver. The most rudimentary functioning of this unit ispossible with no more than the list of SNR's for each signal for eachbeam as provided by the up front signal parameter estimation unit 245,the type of MUD implemented in the receiver as provided on line 980, andeither an estimated modulation rate and, if possible, an errorcorrection coding rate from line 260 or a known modulation and, ifknown, a coding rate from line 970. For some state of the art radios,means other than up front signal parameter estimation unit 245 may beused to provide the low quality signal parameter estimates to cognitiveengine 300.

If more information is available, such as quality of servicemeasurements on line 970, the cognitive engine 300 may be capable ofimproved decision making. Further, if available, the cognitive engine300 may be capable of high quality refinements using the high qualitysignal parameters on line 850 that would be a byproduct of the MUDprocessing within unit 900.

FIG. 5 is a block diagram illustrating functionality within an exemplarycognitive engine 300 in accordance with an embodiment. As shown,cognitive engine 300 may include: an operating point determination unit310, a beam grading unit 320, and an ordered beam list generation unit330. The operating point determination unit 310 determines the currentoperating point. The operating point, which is output by unit 310 alongline 315, is defined by the rates of all the signals “seen” by thereceiver as well as the MUD algorithm that has been implemented withinthe receiver. The beam grading unit 320 performs a test to determine ifan operating point is feasible for each possible beam or combination ofbeams under consideration. If it is feasible, this unit then computes agrade that scores the level of “goodness” of this beam or combination ofbeams for the MUD processing that will be performed. If the operatingpoint is not feasible, the beam grading unit provides the lowestpossible grade for that beam or combination of beams for the givenoperating point. The list of graded beams or combination of beams isoutput along line 325. The ordered beam list generation unit 330 putsthe list of beams or beam combinations in the order that should be usedby a beam-recursive MUD, if a beam-recursive MUD is to be used. Notethat the list for a beam-recursive MUD is not a simple grade-orderedlist. If a non-beam-recursive MUD is to be used, then a grade-orderedlist still may be provided along line 360, but only the beam orcombination of beams with the highest grade will be used. Unit 320 couldimplement any appropriate evaluation algorithm for determining theprobability of success or similar metric for a given multiuser detectoroperating on a specific set of interfering signals as “seen” via asingle beam MUD, multi-spatial MUD acting on a combination of beams, orwhen processed with a beam-recursive MUD. One suitable method andapparatus for use as unit 320 is described in PCT Patent Application No.PCT/US2013/031900 entitled “Method And Apparatus For Rate DeterminationIn A Radio Frequency System.”

As will be described in greater detail, in at least one embodiment, thereceiver of FIG. 4 is used in a scenario where pre-existing choices havebeen made for both the transmit powers and modulation and coding ratesfor each of the transmitters that can be “heard” by a subject receiver.It should be appreciated that Node b as shown in FIG. 2 is assumed, forthis exemplary instantiation, to have no control over the transmitpowers or rates of the multiple signals it receives. Another approachthat would enable cooperative on-the-fly autonomous adaptation of theseparameters as described, for example, in U.S. application Ser. No.61/723,639 entitled, “Cognitive Radio Method and Apparatus for AchievingAd Hoc Interference Multiple Access Wireless Communication.”

It should be noted that there are multiple modes of operation possiblefor the receiver of FIG. 4. There is, for example, (1) a single beam MUDmode, (2) a multiple beam non-recursive MUD mode, and (3) a multiplebeam recursive MUD mode. The functionality of the multiple beamnon-recursive MUD mode is a straightforward extension of the single beamMUD mode. It is known in the art that a single receiver port MUD can beextended to a multiple receiver port or multiple-beam MUD. Thus, invarious embodiments described herein, if there are multiple receiveantennas, it is not necessary to feed all of the signals collected onall of the antennas into the MUD. Instead, to head off the issueassociated with the dynamic range problem, one or more formed beams canbe fed into the MUD. If more than one beam is fed to the MUD, then it isa multi-beam or multi-spatial MUD. If only one beam is fed to the MUD,it is a single port MUD (but the MUD algorithm will be essentially thesame). Each of these different MUD types may be used in the variousembodiments described herein. An example of a multiple beam (ormulti-spatial) non-recursive MUD is described in U.S. Pat. No. 7,724,851to Learned et al., which is hereby incorporated by reference herein inits entirety. A beam recursive MUD could also be a multi-spatial beamrecursive MUD where the first pass is with one set of beams, the secondpass is with a different set of beams, and so on.

A description will now be made of the single beam mode of operation.Conventional beamforming, which is well-known and finds application inpoint-to-point links and MIMO systems, attempts to maximize the channelresponse in one direction, while greatly diminishing the response inother directions. Very sharp beams are typically desired to maximize thedynamic range between one primary signal and other secondary, undesiredsignals. In contrast, an approach described herein is to choose beamsthat reduce the dynamic range between signals. This will allow arealistic MUD algorithm to be employed wherein the multiuser capacityregion or achievable rate region is favorable for the MUD that has beenimplemented within the receiver. In the discussion that follows, thetechnique will be described in the context of two signals. However,persons skilled in the art will appreciate that the techniques easilyextend to greater number of signals.

Making the two signals much closer in power level (i.e., loweringdynamic range) is done at the expense of the SNR of the higher powersignal. This must therefore be done carefully so that the rate for thathigher power signal, after the application of the beam, is not too highrelative to its “new” SNR. For example, if a dynamic range of 10 dBbetween signals is sufficient to eliminate the “quantization noise”caused by the combination of the automatic gain control and the A/Dconverter, and the normalized interference between those two signals ismaximal (mathematically, the time-space received signature pulses wouldbe nearly collinear in such a case), then it is best to work towardchoosing or creating a beam to provide the desired 10 dB dynamic rangebecause that will give the implemented MUD algorithm the best operatingpoint. If the time-space signature pulses were less than maximallyinterfering, then a smaller dynamic range could be tolerated. Theoperating point determination unit 310 would provide appropriateevaluation regarding this trade.

In one approach, to enable the ability to reduce or alter the receiveddynamic range between co-channel signals, a selection may be made amongmultiple linear combinations of spatial waveforms. That is, a set oflinear combinations of antenna data, also known as “beams”, are capableof being formed. The directional response of each combination (i.e., the“beam pattern”) can be either known or unknown, and either fixed orvariable, in different embodiments.

Referring back to FIG. 4, in one exemplary embodiment, the multipleantennas 100, 110 supply signals to a set of fixed linear combiners 201,210. One combiner output is chosen for conventional down conversion andbaseband sampling. The particular combiner chosen is one that exhibitsfavorable dynamic ranges for the signals of interest, so that the MUDalgorithm behaves favorably.

FIG. 6 is a block diagram illustrating another exemplary receiver inaccordance with an embodiment. As shown, the receiver of FIG. 6 includesa single programmable linear combiner 211. A programmable weight unit366 is used to supply programmable weights to provide the linearweighting used by a multiply-add operation in combiner 211.

In one embodiment, arrays of dipoles are used for the antennas 100, 110of FIG. 6. A dipole has an omnidirectional response pattern (in theplane). As illustrated in FIG. 7, two dipoles separated by a distance dreceive energy from a signal at angle θ with center frequency f=c/λ,where c is the speed of light and λ is the wavelength. If the outputs ofthe two antennas are combined with weights w₁ and w₂, the equivalentcomplex baseband response is:

w ₁ +w ₂ ^(ej2πd/λ cos(θ)),  (1)

which depends on the angle of arrival θ. FIG. 8 shows some obtainableresponses for various linear combinations w₁ and w₂. As can be seen,responses varying from mildly directional to those with deep nulls canbe obtained. Many other antenna configurations and combining approachesare possible.

An implementation such as shown in FIG. 6 may utilize a small subset ofresponses. These can be conventionally obtained through use of fixedamplifiers or attenuators, resistive combiners, PIN diodes, or anycombination of the above. Such an implementation may also allow theweights w₁ and w₂ to be set arbitrarily. These can be obtained, forexample, by using programmable amplifiers or attenuators.

The spatial response patterns of the antennas 100, 110 can be eitherknown or unknown. Different algorithms may be applied depending on thesituation.

The up front parameter estimator unit 245 of FIG. 4 computes parametersneeded by the cognitive engine 300 from raw RF linear combiner outputson lines 230, 240 and from the A/D converter output on line 750.Similarly, the up front parameter estimator unit 245 of FIG. 6 computesparameters needed by the cognitive engine 300 from an output of a singlevariable linear combiner 211 on line 370 and the A/D converter output online 750. FIG. 9 is a block diagram illustrating functionality within upfront parameter estimator unit 245 in accordance with an embodiment. Forthe case where the antennas 100, 110 have known beam patterns, a firststep may be to estimate the directions-of-arrival of each of the desiredsources in a local coordinate system, indexed by angle θ, using thedirection of arrival estimator 246 of FIG. 9. Any conventionaldirection-of-arrival estimation technique may be used. Well knowntechniques include, but are not limited to: MUSIC, ESPRIT,Maximum-Likelihood, weighted subspace fitting, the single channel DFmethod disclosed in U.S. Pat. No. 7,126,533, and related methods. Pureanalog methods, such as the known analog subspace tracking approach canbe used utilizing the information on lines 230-240, or pure digitalmethods using the digital signal on line 750 and the technique of U.S.Pat. No. 7,126,533 can be used. The estimated direction of arrivals arecombined with the known antenna beam patterns and RF linear combinerpatterns by unit, to enable choice of the best linear combination by thecognitive engine 300.

For a fixed set of N known RF linear combiners and known antenna arraypatterns, let the n^(th) known combined beam pattern be denoted byb_(n)(θ), for n=1, . . . , N, where θ indexes the direction-of-arrival.The parameter b_(n)(θ) is then the complex amplitude response ofcombination n to a unit-amplitude signal from direction θ.

Let the direction-of-arrival estimates of the two sources be denoted byθ₁ and θ₂, and the powers of the two sources be denoted by p₁ and p₂,respectively. Without loss of generality, we assume p₁≧p₂. The optionsfor dynamic range compression may be calculated by the beam dynamicrange calculator 247 according to:

$\begin{matrix}\frac{p_{1}{{b_{n}\left( \theta_{1} \right)}}^{2}}{p_{2}{{b_{n}\left( \theta_{2} \right)}}^{2}} & (2)\end{matrix}$

for n=1, . . . , N. These are communicated on line 261 to the lowquality parameter estimator 241.

For systems where N is very large, which may occur, for example, insystems with programmable amplifiers, it may not be cost effective orpractical to enumerate all combinations and test equation (2)exhaustively. Instead, it is more efficient to collect all the degreesof freedom that the system can control into a vector m. The elements ofm might be amplifier gain settings and phase shift settings, or perhapsphysical settings to control the orientation of physically steerableantennas. The parameter b_(m)(∝) is now commonly referred to as an“array manifold”, and the beam dynamic range calculator 247 supplies thefunction of m:

$\begin{matrix}\frac{p_{1}{{b_{m}\left( \theta_{1} \right)}}^{2}}{p_{2}{{b_{m}\left( \theta_{2} \right)}}^{2}} & (3)\end{matrix}$

on line 261 instead of providing the values of dynamic range as is donewhen the number of beams is low. Also, in this case, unit 241 of FIG. 9would provide an estimate or prediction of the low quality parameterestimates for one or more values of m. A fine tuning iterative processwould ensue between the cognitive engine 300 and the up front parameterestimator 245 that would result in a final iteration and output on line325 of FIG. 5 that would correspond to a “high-grade” dynamic range andthe corresponding setting for m, which would define the beam that wouldprovide this high-grade dynamic range. Specifically, the value or valuesof m used in unit 241 of FIG. 9 would be adjusted by the optimizationunit 243 which could employ any well known optimization or searchalgorithm known to those skilled in the art of optimization.Optimization unit 243 takes as input a beam grade and its correspondingvalue of m or a list of beam grades and their corresponding values of mon line 325 from the beam grading unit 320 of FIG. 5. The optimizationunit 243 of FIG. 9 then provides a new value or values of m on line 262to unit 241 for another iteration of low quality parameter estimationcorresponding to the new value or values of m. This continues until theoptimization unit 243 determines that no more iterations are necessaryor until some threshold number of iterations has been reached.

A power and SNR estimator 248 within the up front parameter estimator245 of FIG. 9 operates in a tracking loop via line 750. The estimator248 assumes only one RF linear combiner is operating at a time.Combiners are switched periodically and at a faster rate than thechanges in channel parameters so that the signal powers and multipathenvironment do not appreciably change during the processing snapshot.The estimator 248 also assumes the array manifold is known and thedirection of arrival estimates are tracked (so that array responsematrix A is entirely known). It also assumes that the noise power σ² isbeing tracked.

If the n^(th) RF linear combiner measurement output is denoted by:

y _(n) ^(H) =c _(n) ^(H) AS _(n)

for n=1, . . . , N, where c_(n) is the linear combiner weighting vector,and S_(n) is the matrix of source transmissions for the n^(th)measurement (one source per row), and the superscript H denotes theHermitian transpose operation. The following steps may be used tocalculate the signal powers and SNRs:

-   -   1) Calculate the combined array response and RF linear combiner        response d_(n) ^(H)=c_(n) ^(H)A, and calculate the average power        for the n^(th) combiner output via

$r_{n} = {\frac{1}{K}y_{n}^{H}{y_{n}.}}$

-   -    Note that:

$\begin{matrix}{r_{n} = {{c_{n}^{H}{A\left( {\frac{1}{K}S_{n}S_{n}^{H}} \right)}A^{H}c_{n}} = {{d_{n}^{H}{Pd}_{n}} = {{d_{n}}^{2\; T}p}}}} & (4)\end{matrix}$

-   -    where Id_(n)|² denotes the column vector of the        magnitude-squared of the elements of d_(n) and p denotes the        main diagonal of P reshaped into a column vector. Note that this        assumes that the source's powers remain reasonably constant        across RF linear combiner measurements, but that the actual        transmitted symbols are allowed to vary.    -   2) Stack the r_(n) in equation (4) into a column vector as        follows:

$\begin{matrix}{r = \begin{bmatrix}r_{1} \\\vdots \\r_{N}\end{bmatrix}} & (5)\end{matrix}$

-   -    and stack the |d_(n)|^(2T) in function (4) into a matrix:

$\begin{matrix}{E = {\begin{bmatrix}{d_{1}}^{2\; T} \\\vdots \\{d_{N}}^{2\; T}\end{bmatrix}.}} & (6)\end{matrix}$

-   -    Note that with these definitions and from function (4), we have        r=Ep.    -   3) Solve for the vector of source powers via p=E⁻¹r.    -   4) Solve for the source SNRs using SNRs=p_(s)/σ², for s=1, . . .        , S.        The estimated SNRs, as well as signal powers and noise power        estimates, may then be communicated on line 250 to the cognitive        engine 300 (as shown in FIGS. 4 and 6, line 250 in FIG. 9 is        coupled to cognitive engine 300).

The low quality parameter estimator 241 aggregates information from thegradient calculator 249 and the dynamic range functions on lines 261from the beam dynamic range calculator 247 for transmission to thecognitive engine 300 on line 260. The low quality parameter estimator241 might also generate one or more of bandwidths, modulation type,carrier offset, phase offset, or others based, for example, on what thecognitive engine 300 needs.

The function of the cognitive engine 300 in FIGS. 4 and 6, when in thesingle beam mode, is to optimize the choice of the beam to enablesuccessful demodulation by the MUD. More specifically, the cognitiveengine 300 evaluates the environmental beam-dependent measures and makesa choice as to which beam to use to render the current operating pointsuccessful with the existing front end and MUD algorithm implementedwithin the receiver.

In some implementations, a constraint may be added that prevents thehigher power user's received power from going below what would be neededto receive this user's rate. In other words, the beam grading unit 320in FIG. 5 would incorporate into its grade the power that is required toachieve the current rate. There are several nuances in this, forexample, the grade will be a function of the actual rate plus some ratebuffer that is typically expected to be the difference between the ratean actual system can achieve and the theoretic capacity value. Otherappropriate corrections could occur in the grading process as would beknown to those skilled in the art of wireless communication andinformation theory.

The choice of the beam could be a function of which MUD is available inthe receiver, and a rate-tool, such as the one described in a co-pendingU.S. patent application entitled “Method and Apparatus for RateDetermination in a Radio Frequency System” by McLeod, et al., which iscommonly owned with the present application, can be used to determinewhat the bound on the higher user's power needs to be.

The case where the antennas 100, 110 do not have known beam patterns canalso be handled by the embodiment of FIG. 6. This situation can arisewhen, for example, (1) direction-of-arrival estimates cannot begenerated for the sources, (2) there is severe, variable multipath dueto nearby reflectors in the environment, (3) the antennas are on avehicle and are subject to changing calibration because of door/hatchesbeing in an opened or closed configuration, or (4) antenna flexing. Inthis case, neither of the functions (2) or (3) can be generated by thebeam dynamic range calculator 247 and provided to the cognitive engine300. For successful A/D conversion in A/D converter 700 in this case, itis assumed that operation is taking place in a tracking loop, and it isalso assumed that the setting of the RF linear combiners 201, 210 andAGC 600 are such that no saturation is occurring in A/D converter 700,and that a reasonable operating point (comprised of the implementedmultiuser detector and achievable rates triplet) is currently obtainedby the cognitive engine 300. The channel and the source locations andtransmitted powers are assumed to change slowly, relative to thetracking loop update dynamics.

Instead of functions (2) or (3), the low quality parameter estimator 241may utilize gradient information provided by a gradient calculator 249to calculate updates to the RF linear combiner configuration. Thegradient calculator 249 estimates a gradient matrix between each RFlinear combiner weight and the signals' dynamic ranges at the AGCoutput, the low quality parameter estimator 241 then uses these gradientestimates to step in a “downhill” direction to a more favorable dynamicrange.

The assumption then is that this algorithm is operated in a trackingloop, where it is assumed that the setting of the RF weights and AGC aresuch that no saturation is occurring and that a reasonable multiusercapacity region is currently obtained, relative to the rates of the twointerfering signals (e.g. the rate pair operating point is within theportion of the multiuser capacity region that corresponds to the MUDdetector that has been implemented within the receiver.) The channel andthe source locations and transmitted powers are assumed to changeslowly, relative to the tracking loop update dynamics.

For the embodiment of FIG. 6, the current weights may be represented bya vector w. The parameter estimator that is required for the MUDalgorithm estimates the SNRs of all signals present, so it is alsocapable of estimating the dynamic range D at the output of the AGC 600.One possible approach to providing a “cold” estimate of the receivedamplitudes at this point in the processing chain is to rely upontraining sequences within the transmitted signals. Once a “lock” hasbeen obtained on the signals and the MUD algorithms are engaged indetection/decoding of the signals, the signal parameters may becontinuously tracked and updated for the MUD algorithm to continue towork properly. An additional metric and control feedback may be added tothis “in-MUD” parameter update processing that monitors the dynamicrange between the interfering signals and sends new weights to the beamcombiner controller/selector to properly adjust the dynamic range whenit approaches the danger level as determined by the AGC+A/D effects. TheWeight Control Algorithm then calculates small, random changes Δw to theweights. The new weights w+Δw are applied, and the new dynamic range D′measured. The next setting of the weights is:

$\begin{matrix}{w^{\prime} = {w - {\mu \frac{D^{\prime} - D}{\Delta \; w}}}} & (7)\end{matrix}$

where 0<μ<1 is used to account for the channel dynamics. A smaller μwill lead to slower but more stable adaptation. However, μ cannot be toosmall as the algorithm may then fail to track channel dynamics.

Referring back to FIG. 5, the cognitive engine 300 will now be describedin greater detail for a specific embodiment. The operating point whichis output by operating point determination unit 310 along line 315 isdefined by the rates of all the signals “seen” by the receiver as wellas the MUD algorithm that has been implemented within the receiver. Thenomenclature used throughout this description to represent the operatingpoint is:

O=(R _(a) ,R _(A),MUD_(b)),  (8)

where MUD_(b) is the specific MUD algorithm implemented in node b'sreceiver, and R_(a) and R_(A) are the rates of the information containedwithin the signals transmitted by nodes a and A, respectively. The rateof the information within the signal transmitted by node a is expressedin the number of information bits per channel use (or information bitsper baud pulse or per modulated symbol) as follows:

$\begin{matrix}{R_{a} = {\frac{k}{n}{\log_{2}(M)}}} & (9)\end{matrix}$

where M is the order of modulation and log₂(M) is the number ofmodulated bits per channel use, and k/n is the coding rate (i.e., thenumber of information bits per modulated bits). For example, if themodulation scheme is 8-ary phase shift keying (8PSK), then M=8 and thereare 3 bits embedded in every pulse transmitted. If an error correctioncode was applied between the source of information bits and themodulator, and if that error correction code were a

$\frac{k}{n} = \frac{1}{2}$

rate code, then the rate of the information conveyed in the signaltransmitted by node a would be R_(a)=½×3=1.5 information bits perchannel use.

The rate of the signal transmitted by node A could be one of twodefinitions depending upon the configuration of the receiver within nodeb. If node b “knows” the code book used by transmitter A for the errorcorrection coding of node A's signal and if node b employs a MUD thattakes advantage of node A's error correction code, then, using themodulation and code rates employed in transmitter A, we would have:

$\begin{matrix}{R_{a} = {\frac{k}{n}{\log_{2}(M)}}} & (10)\end{matrix}$

If, on the other hand, node b does not know or does not use the errorcorrection embedded within transmitter A's signal, then we have:

R _(A)=log₂(M)  (11)

The information that is conveyed to the cognitive engine 300 over line980 would be the specific MUD algorithm that has been implemented withinthe subject receiver. Examples of various MUD algorithms that might beemployed within the subject receiver are: (1) matched filter successiveinterference cancellation (MF SIC), (2) minimum mean squared error MUD(MMSE MUD), (3) MMSE SIC, (4) Turbo MUD, (5) M-Algorithm MUD, (6) otherMUDs that attempt to mimic much of the optimum MUD processing, as wellas many other possible MUDs.

To complete the definition of operating point which is output by unit310 along line 315, we shall provide an example where we determine theoperating point for the following case:

1. Node a

-   -   (a) Modulation=8PSK (M=8, log₂(M)=3)    -   (b) Error Correction Code=⅞ rate convolutional code (k=7, n=8)

2. Node A

-   -   (a) Modulation=QPSK (M=4, log₂(M)=2)    -   (b) Error Correction Code=¾ rate Reed Solomon code (k=3, n=4)

3. Node b

-   -   (a) MUD type=MMSE SIC    -   (b) Use a's error correction code within the MUD:        YES(R_(a)=3×⅞=2×⅝=2.625)    -   (c) Use A's error correction code within the MUD: NO (R_(A)=2)        In the above case, the operating point is:

O=(2.625,2,MMSE SIC).  (12)

The operating point determination unit 310 takes as input low qualitysignal parameter estimates over line 260 and the type of MUD algorithmthat has been implemented in the receiver over line 980. An operatingpoint can be determined with these two inputs. If higher quality signalparameters are available over line 970 and/or line 850, this unit mayuse the highest quality signal parameter values available to determinethe operating point.

The low quality signal parameter estimates on input line 260 may includesome or all of the following values. Those marked with an asterisk (*)are required for determination of the operating point. The other valuesmay be used by the beam grading unit 320 to compute a grade for eachbeam. As will be described in greater detail, the up front parameterestimation unit 245 may provide these values.

-   -   Number of interfering signals*    -   Modulation (M) for each signal*    -   For each signal, whether or not the receiver will perform error        correction decoding*    -   If the receiver will perform error correction decoding, the        coding rate for that signal*    -   Baud timing offset of the interfering signals    -   Carrier frequency for each interfering signal    -   Cross correlation between every pair of interfering signals

As described previously, the up front parameter estimation unit 245 maygenerate a list of SNRs for each beam on line 250. This list may then beinput to the cognitive engine 300 (e.g., see FIG. 5). This listcomprises one value of SNR for each interfering signal as it is receivedby each beam. For example, if there are two interfering signals and 10possible beams, this list could be represented as a table with 10 rows,one for each beam, with two SNR's in each row. It is important that asingle column in this table contains the SNRs corresponding to the sametransmitter. Some beams would result in the SNR being the higher of thetwo signals, while other beams would result in this same signal beingthe lower of the two signals. It is important not to confuse the signalsin this table.

Input Line 970 of cognitive engine 300 may include information typicallyproduced within state of the art radio receivers that help the radiodetermine if it is meeting the necessary quality of service (QoS) bychecking the packet drop rate for the signal of interest. If the packetdrop rate is higher than some acceptable threshold, then the QoS is notmet. In addition, typical to state of the art radio receivers is thepossession of information that defines the waveform in use, to includeassignments of values to the following: modulation scheme, errorcorrection coding scheme, frequency band or center frequency andbandwidth, packet/frame structure, etc. This information may be knownabout one or all of the interfering signals and may, therefore, not needto be estimated by unit 245, but instead, unit 245 may simply need todetermine the association of each waveform parameter list with theincoming environmentally determined values such as SNR, timing offset,frequency offset, etc.

Input Line 850 of cognitive engine 300 is a byproduct of the MUDprocessing since many MUD algorithms require very good estimates of eachof the interfering signals' SNRs and/or receive amplitudes, baudtimings, carrier offsets, modulation schemes, coding schemes, etc. Theestimates made by MUD unit 900 in order to successfully perform the MUDmay be of higher fidelity than is possible using only the analog signalsavailable to the up front parameter estimation unit 245. MUD unit 900,however, will only have computed estimates for the selected beams.

Beam grading unit 320 of cognitive engine 300 (see FIG. 5) performs atest to determine if an operating point is feasible for each beam orcombination of beams under consideration. If it is feasible, this unitthen computes a grade that scores the level of “goodness” of this beamor combination of beams for the MUD processing that will be performed inthe back end of the subject receiver.

The ordered beam list generation unit 330, for the single beam mode ofoperation, will generate a list that contains only one beam or beamcombination. The beam number (for the case of the single-beam MUD) orset of numbers (for the case of multispatial MUD) output by unit 330along line 360 indicates the beam or beam combination set that wasscored the highest by unit 320.

The beam selector 365 of FIG. 4 takes information about the selectedbeam or set of beams from line 360, and performs the operation ofmultiplexing the output of the selected combiner (one of units 201-210)onto line 370. For each beam, this is a conventional operation (selectone of a set of analog lines), which may be performed using, forexample, isolation amplifiers, hybrid couplers, or analog switches.

The down converter 400 may include a conventional device that takes adown conversion tone 390 supplied by a conventional phase referenceoscillator, and mixes it with the post-analog beamformed RF signal 370.The operation is used to convert a signal with an RF center frequency toa much lower baseband frequency, where ensuing digitization hardwaretypically functions.

The low pass filter 500 may include any type of filter that limits thefrequency extent of signals passing through it. It is generally requiredso that ensuing digitization operations function properly in thataliasing of out of band signals do not occur.

The AGC unit 600 is a device that attempts to set the overall signalamplitude level that results from the combination ofsignals-of-interest, signals-not-of-interest, and noise. It acceptslow-pass filtered information from filter 500 and acts to scale theamplitude of that signal to below the full scale input of the A/Dconverter 700, with some margin to avoid saturation or damage to thereceiver components given this amount of gain. Additional considerationmay be given to setting the gain so that the noise-like effect ofquantization by the A/D converter 700 is generally low.

The A/D converter 700 is a conventional device that performs the actualdigitization of the analog signal output by AGC unit 600. As has beenpreviously noted, A/D converters sometimes have severe limitations inthat the peak input signal level must be controlled rather tightly toavoid saturation and perhaps device damage. In addition, there may be atrade-off of cost versus dynamic range performance and capabilityinherent in choice of A/D converters. The ability for the cognitiveengine 300 to intelligently and cognitively choose and/or reshape thetotal dynamic range of signals input to A/D converter 700 will allow agreat cost reduction in that less capable A/D converters can be used.

The power and SNR estimator 248 can be performed more simply (withoutuse of a tracking mode) in the multi-beam mode, by making use of themultiple combiner/beams. It is more in line with conventional blindsource separation type approaches, where multiple simultaneouslygathered measurements are used.

The measurement model is:

Y=CAP½S+N  (13)

where:

-   -   Y:N×K matrix of measured data    -   N is the number of combiners and K is the number of samples    -   K≧N≧M≧S    -   M is the number of antennas and S is the number of sources        (transmitters)    -   C:N×M matrix of known linear combiner weights    -   C⁺:M×N pseudo inverse of the C matrix    -   A:M×S matrix containing the unknown array response, but        |A_(ij)|²=1    -   P:S×S, matrix of signal powers (diagonal matrix of unknown        positive values)    -   S:S×K, matrix containing the signals, one row corresponding to        typically hundreds of symbols transmitted by each source or        transmitter (unknown, but signal rows uncorrelated)    -   R_(s)(τ)=E{SS_(τ) ^(H)} (temporal signal cross-correlation),        where S_(τ) is the matrix S, shifting in time by τ samples.        R_(s)(τ) is assumed to be diagonal, and R_(s)(0)=I, where I is        the identity matrix (since matrix P defined above accounts for        the signal powers)    -   N:N×K matrix of colored white Gaussian noise with E{NN^(H)}=σ²I,        σ² unknown

The effect of the antennas are modeled as merely phase shifts in amatrix A (treated as unknown phase shifts here for simplicity; otherapproaches using well known methods are possible if the array iscalibrated). The signal powers are collected into a diagonal matrix P.It will be assumed that several RF linear combiners are available. Inthis situation, the signal and noise powers, and the SNRs may becalculated using the seven steps below. This approach is an adaptationof the second order blind identification (SOBI) algorithm.

-   -   1) Estimate σ² and S by minimum description length (MDL) or        similar methods that determine subspace dimensionality. The        noise power estimate σ² is output on line 250.    -   2) Calculate Z=C⁺Y and if M>S perform the additional “noise        cleaning” operation as follows. Calculate the eigenvectors of        ZZ^(H) corresponding to the largest S eigenvalues, and collect        these into an M×S matrix U. Then, calculate Z_(c)=U^(H)Z and set        Z equal to Z_(c). Z is now of size S×S. Note that U and A span        the same space so that U^(H)A is full rank.    -   3) Form two temporal empirical covariance matrices:

$\begin{matrix}{{R_{z}(\tau)} = {\frac{1}{K}{ZZ}_{\tau}^{H}}} & (14)\end{matrix}$

-   -   for τ=τ₁ and τ=τ₂ (and neither equal to zero). Z_(τ) is equal to        Z shifted in time by τ samples. The τ's are to be chosen to be        different from each other, and to approximately correspond to        the reciprocal of the widest bandwidth of the signals of        interest. Note that τ₁=0 could be utilized if the excess        estimated covariance error σ²I is subtracted from the        calculation of (14). Note from (13) that asymptotically        R_(z)(τ)=U^(H)AP^(1/2)R_(s)(τ)P^(1/2)A^(H)U.    -   4) Calculate G=R_(z)(τ₁)(R_(z)(τ₂))⁻¹. Note that asymptotically:

G=(U ^(H) A)R _(s)(τ₁)R _(s) ⁻¹(τ₂)(U ^(H) A)⁻¹

-   -   5) Calculate the eigenvectors of G, and collect them into a        matrix V. Techniques for performing this decomposition are well        known. Note that Vand U^(H)A are related by multiplication of an        arbitrary unknown diagonal phasor matrix D and an arbitrary        unknown permutation matrix Π, via V=U^(H) A D H. This ambiguity        is well known in the SOBI method and has no negative impact on        our method.    -   5) Calculate W=V⁻¹Z. Note that it can be shown that        WW^(H)=Π^(H)PΠ, so that W contains the signal power information        we seek.    -   6) Calculate the estimated signal powers as follows. Let w_(i)        ^(H) be the ith row of W. Then the estimated signal powers are        calculated as p_(i)=w_(i) ^(H)w_(i)/K, for i=1, . . . , S.    -   7) Calculate the SNRs via: SNR_(i)=p_(i)/σ², for i=1, . . . , S.        These values are output on line 250.

The techniques, concepts, systems, and devices described herein may beused in a wide variety of different applications. For example, in onepossible application, the techniques may be implemented within cellularsystems that use femtocells to allow the femtocells to coexist onchannels used by corresponding macrocells. In another application, thetechniques may be implemented in wireless networks to permit, forexample, an increase in the density of wireless access points in anetwork. In still another application, the techniques may be used toallow a terrestrial cellular system to operate within the same frequencyband as, for example, a satellite communication system. Features of theinvention may be implemented within a wide variety of node typesincluding, for example, handheld wireless communicators, cell phones,smart phones, computers, wireless network interface devices, basestations, wireless access points, femto cell units, wireless gatewayunits, WiFi hotspot units, integrated circuits, and others. Many otherapplications also exist.

Having described preferred embodiments of the invention it will nowbecome apparent to those of ordinary skill in the art that otherembodiments incorporating these concepts may be used. Accordingly, it issubmitted that the invention should not be limited to the describedembodiments but rather should be limited only by the spirit and scope ofthe appended claims.

1. A communication device for use in a multi-signal wireless environmenthaving a signal of interest and one or more other signals in a commonfrequency band, the device comprising: multiple antenna ports forconnection to multiple antennas; at least one analog beamformer to formdifferent receive beams for the multiple antennas, each receive beam toreceive a different combination of the signal of interest and the one ormore other signals; a multi-user detector (MUD) that is capable ofdemodulating a signal of interest within a composite signal; and acognitive engine to intelligently select one or more receive beams thatwill result in a dynamic range between the signal of interest and theone or more other signals that are delivered to the MUD that isfavorable for successful detection of the signal of interest in the MUD.2. The communication device of claim 1, further comprising: a parameterestimator to estimate one or more signal quality metrics for each signalwithin each of a plurality of receive beams generated by the at leastone analog beamformer, wherein the cognitive engine is configured toselect the one or more receive beams based, at least in part, on thesignal quality metrics estimated by the parameter estimator.
 3. Thecommunication device of claim 2, wherein: the one or more signal qualitymetrics estimated by the parameter estimator includes a signal to noiseratio (SNR).
 4. The communication device of claim 2, wherein: theparameter estimator is configured to estimate one or more low qualitysignal parameters associated with signals received within receive beamsgenerated by the at least one analog beamformer; and the cognitiveengine is configured to select the one or more receive beams based, atleast in part, on the low quality signal parameters.
 5. Thecommunication device of claim 4, wherein: the cognitive engine includesa beam grading unit to provide grades for beams or beam combinationsthat are indicative of the beams or beam combinations respectiveadvantage provided to the demodulator for the specific signals ofinterest; and the parameter estimator includes an optimization unitcoupled to receive the beam grades from the beam grading unit and to usethe grades to optimize the beams for which low quality signal parametersare generated in a recursive fashion.
 6. The communication device ofclaim 4, wherein: the one or more low quality signal parametersestimated by the parameter estimator include at least one of: a numberof coexisting signals, a baud rate for each signal, baud timing for eachsignal, carrier offset for each signal, error correction coding rate foreach signal, and modulation scheme for each signal.
 7. The communicationdevice of claim 2, wherein: the at least one analog beamformer includesmultiple combiners that are each configured to linearly combine signalsreceived at the multiple antennas in a different manner, wherein anoutput of each of the multiple combiners is coupled to an input of theparameter estimator.
 8. The communication device of claim 7, furthercomprising: a beam selector switch coupled to outputs of the multiplecombiners to select, under control of the cognitive engine, one or moreof the beams generated by the multiple combiners for further receiverprocessing.
 9. The communication device of claim 2, wherein: the atleast one analog beamformer includes a linear combiner havingconfigurable combining weights, the linear combiner having an outputthat is coupled to an input of the parameter estimator, wherein thelinear combiner is capable of achieving a variety of different receivebeams if the combining weights are varied.
 10. The communication deviceof claim 9, further comprising: a weight generation unit to generateweights for the linear combiner under control of the cognitive engine toachieve different receive beams.
 11. The communication device of claim10, further comprising: a receive chain having an automatic gaincontroller followed by an analog to digital converter, wherein theparameter estimator includes a gradient calculator to determinegradients between linear combiner weights and a dynamic range of asignal at the output of the automatic gain controller, the parameterestimator to deliver the gradients to the cognitive engine for use inupdating the weights of the linear combiner.
 12. The communicationdevice of claim 2, wherein: the parameter estimator includes a directionof arrival estimator to estimate angles of arrival of signals within theplurality of receive beams.
 13. The communication device of claim 12,wherein: the parameter estimator includes a beam dynamic range estimatorto estimate dynamic ranges between the signal of interest and othersignals in different receive beams using the direction of arrivalinformation generated by the direction of arrival estimator and knownbeam patterns associated with the different receive beams; and thecognitive engine is configured to select the one or more receive beamsbased, at least in part, on the estimate dynamic ranges.
 14. Thecommunication device of claim 1, wherein: the cognitive engine isconfigured to deliver information identifying a selected beam or beamsto the MUD.
 15. The communication device of claim 1, wherein thecognitive engine includes: an operating point determination unit toidentify an operating point of the communication device based, at leastin part, on powers and rates associated with signals received at themultiple antennas; and a beam grading unit to determine if each of theavailable receive beams or beam combinations is feasible for use at theoperating point and, if so, to determine a grade for the beam or beamcombination.
 16. The communication device of claim 15, wherein thecognitive engine further includes: an ordered beam list generation unitto generate a list of beams or beam combinations in order of preferencebased, at least in part, on the grades determined by the beam gradingunit, the ordered beam list generation unit being configured to (a)generate a list of beams in grade order if a single-beam MUD is beingused, (b) generate a list of beam combinations if a multi-beam MUD isbeing used, and (c) generate a list of beams or beam combinations in anorder that the beams or beam combinations should be used by the MUD if abeam-recursive MUD is being used.
 17. The communication device of claim1, wherein: the cognitive engine is configured to select the one or morereceive beams based, at least in part, on one or more high qualitysignal parameter estimates generated as a byproduct of the MUD.
 18. Thecommunication device of claim 1, wherein: the cognitive engine isconfigured to select the one or more receive beams based, at least inpart, on quality of service (QoS) information.
 19. The communicationdevice of claim 1, wherein: the communication device includes multipleMUDs using different MUD processes; and the cognitive engine isconfigured to select the one or more receive beams based, at least inpart, on the different MUDs that are available in the communicationdevice.
 20. The communication device of claim 1, wherein: thecommunication device comprises a single type of MUD; and the cognitiveengine is configured to select one beam, one beam combination, or a listof beams based, at least in part, on the type of MUD that is availablein the communication device.
 21. The communication device of claim 1,wherein: the communication device comprises a handheld wirelesscommunicator.
 22. The communication device of claim 1, wherein: thecommunication device comprises a base station or wireless access point.23. The communication device of claim 1, wherein: the communicationdevice comprises an integrated circuit.
 24. The communication device ofclaim 1, wherein: the communication device comprises a femtocell unitfor use in a cellular communication system.
 25. The communication deviceof claim 1, wherein: the communication device comprises a gateway unitfor use in WiFi hotspots.
 26. The communication device of claim 1,wherein: the at least one analog beamformer is only capable of coarsebeamforming.
 27. A method for use in detecting and demodulating a signalof interest in a multi-signal wireless environment, comprising:receiving signals using multiple receive beams associated with aplurality of antennas, wherein each receive beam outputs a compositesignal having a different combination of the signal of interest and oneor more other signals; and selecting one or more of the multiple receivebeams to be coupled to a multi-user detector (MUD) to demodulate thesignal of interest, wherein selecting one or more of the multiplereceive beams includes selecting one or more receive beams that willproduce an estimated dynamic range between the signal of interest andthe one or more other signals that is favorable for demodulation of thesignal of interest in the MUD.
 28. The method of claim 27, wherein:selecting one or more of the multiple receive beams includes selectingone or more receive beams that produce an estimated dynamic rangebetween the signal of interest and the one or more other signals that isbest for detection of the signal of interest in the MUD from amongst themultiple receive beams.
 29. The method of claim 27, wherein: receivingsignals using multiple receive beams includes receiving signals usingmultiple different combiners that are each coupled to the plurality ofantennas, wherein each combiner generates a different receive beam. 30.The method of claim 27, wherein: receiving signals using multiplereceive beams includes receiving signals using a linear combiner havingvariable combining weights that is coupled to the plurality of antennas,wherein the combining weights are varied to achieve the multiple receivebeams.
 31. The method of claim 30, further comprising: estimatinggradients between combining weights of the linear combiner and a dynamicrange of a signal at the output of an automatic gain controller; andusing the gradients to update the combining weights of the linearcombiner.
 32. The method of claim 27, further comprising: estimatingparameters associated with signals output by each of the multiplereceive beams; wherein selecting one or more of the multiple receivebeams includes selecting the one or more receive beams based, at leastin part, on the estimated parameters.
 33. The method of claim 32,wherein: estimating parameters associated with signals output by each ofthe multiple receive beams includes estimating a signal quality metricfor each signal output by each receive beam; wherein selecting one ormore of the multiple receive beams includes selecting the one or morereceive beams based, at least in part, on the estimated signal qualitymetrics.
 34. The method of claim 33, wherein: the signal quality metricis a signal to noise ratio (SNR).
 35. The method of claim 32, wherein:estimating parameters includes estimating one or more low quality signalparameters associated with signals output by each receive beam; whereinselecting one or more of the multiple receive beams includes selectingthe one or more receive beams based, at least in part, on the estimatedlow quality signal parameters.
 36. The method of claim 35, furthercomprising: generating grades for beams that are indicative of thebeams' respective abilities to demodulate the signal of interest; anditeratively optimizing a group of beams for which low quality signalparameters are generated based on the beam grades.
 37. The method ofclaim 35, wherein: the one or more low quality signal parameters includeat least one of: a number of coexisting signals, a baud rate for eachsignal, baud timing for each signal, carrier offset for each signal,error correction coding rate for each signal, and modulation scheme foreach signal.
 38. The method of claim 32, wherein: estimating parametersincludes estimating angles of arrival associated with the one or moreother signals output by the multiple receive beams.
 39. The method ofclaim 38, wherein: estimating parameters includes estimating a dynamicrange between the signal of interest and the other signals in thecomposite signal associated with each of the multiple receive beamsusing the estimated angles of arrival; wherein selecting one or more ofthe multiple receive beams includes selecting the one or more receivebeams based, at least in part, on the estimated dynamic ranges.
 40. Themethod of claim 27, wherein: selecting one or more of the multiplereceive beams to be coupled to a multi-user detector (MUD) to detect thesignal of interest includes: determining an operating point based, atleast in part, on powers and rates associated with signals received atthe plurality of antennas; grading beams to determine if each of theavailable receive beams or beam combinations is feasible for use at theoperating point; if an available receive beam or beam combination isfeasible for use at the operating point, determining a grade for thebeam or beam combination; and generating an ordered list of beams orbeam combinations in order of preference based, at least in part, on thegrades determined by the beam grading unit.
 41. The method of claim 27,wherein: selecting one or more of the multiple receive beams includesselecting the one or more receive beams based, at least in part, on oneor more high quality signal parameter estimates generated as a byproductof the MUD.
 42. The method of claim 27, wherein: selecting one or moreof the multiple receive beams includes selecting the one or more receivebeams based, at least in part, on quality of service (QoS) information.43. The method of claim 27, wherein: selecting one or more of themultiple receive beams includes selecting the one or more receive beamsbased, at least in part, on the signal quality metric of signal to noiseratio (SNR).
 44. The method of claim 27, wherein: selecting one or moreof the multiple receive beams includes selecting the one or more receivebeams based, at least in part, on the modulation and/or information rateof the interfering signal.
 45. The method of claim 27, wherein:selecting one or more of the multiple receive beams includes selectingthe one or more receive beams based, at least in part, on one or morehigh quality signal parameters generated by a high quality parameterestimation unit.
 46. The method of claim 27, wherein: multiple differentMUDs are available for use in detecting the signal of interest; andselecting one or more of the multiple receive beams includes selectingthe one or more receive beams based, at least in part, on the differentMUDs that are available.
 47. The method of claim 27, further comprising:delivering information identifying the one or more selected receivebeams to the MUD.